without two loops